Activity diagram |
|
The Activity Diagram can help to describe the
flow of control of the target system, such as the exploring complex
business rules and operations, describing the use case also the business
process.
|
|
|
Use case diagram
|
Class diagram
|
Sequence diagram
|
Communication diagram
|
State machine diagram
|
Activity diagram
|
Component diagram
|
Deployment diagram
|
Package diagram
|
Object diagram
|
Composite structure diagram
|
Timing diagram
|
Interaction overview diagram
|
|
|
|
|
Activity diagram |
|
|
|
Notation
| DefinitionThe
focus of activity modeling is the sequence and conditions for
coordinating lower-level behaviors, rather than which classifiers own
those behaviors. These are commonly called control flow and object flow
models. The behaviors coordinated by these models can be initiated
because other behaviors finish executing, because objects and data
become available, or because events occur external to the flow. |
|
| |
| |  | | Definition | An
activity specifies the coordination of executions of subordinate
behaviors, using a control and data flow model. The subordinate
behaviors coordinated by these models may be initiated because other
behaviors in the model finish executing, because objects and data become
available, or because events occur external to the flow. The flow of
execution is modeled as activity nodes connected by activity edges. A
node can be the execution of a subordinate behavior, such as an
arithmetic computation, a call to an operation, or manipulation of
object contents. Activity nodes also include flow-ofcontrol constructs,
such as synchronization, decision, and concurrency control. Activities
may form invocation hierarchies invoking other activities, ultimately
resolving to individual actions. In an object-oriented model, activities
are usually invoked indirectly as methods bound to operations that are
directly invoked.
Activities may describe procedural computation.
In this context, they are the methods corresponding to operations on
classes. Activities may be applied to organizational modeling for
business process engineering and workflow. In this context, events often
originate from inside the system, such as the finishing of a task, but
also from outside the system, such as a customer call. Activities can
also be used for information system modeling to specify system level
processes. |
| | Properties | | | Name | The name of activity | | Language | | | Precondition | An optional set of Constraints specifying what must be fulfilled when the behavior is invoked. | | Postcondition | An
optional set of Constraints specifying what is fulfilled after the
execution of the behavior is completed, if its precondition was
fulfilled before its invocation. | | Body | | | Documentation | Description of activity. | | Single execution | If true, all invocations of the activity are handled by the same execution. | | Read only | If
true, this activity must not make any changes to variables outside the
activity or to objects. (This is an assertion, not an executable
property. It may be used by an execution engine to optimize model
execution. If the assertion is violated by the action, then the model is
ill formed.) The default is false (an activity may make non-local
changes). | | Reentrant | Tells whether the behavior can be invoked while it is still executing from a previous invocation. | | Variables | Top-level variables in the activity. | | Parameters | References
a list of parameters to the behavior that describes the order and type
of arguments that can be given when the behavior is invoked and of the
values that will be returned when the behavior completes its execution. |
|
|
|
|
| |
| |  | | Definition | Activity
parameter nodes are object nodes at the beginning and end of flows that
provide a means to accept inputs to an activity and provide outputs
from the activity, through the activity parameters.
Activity parameters inherit support for streaming and exceptions from Parameter. |
| | Properties | | | Name | The name of activity parameter node. | | Visibility | Determines
where the activity parameter node appears within different Namespaces
within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells
whether and how the tokens in the activity parameter node are ordered
for selection to traverse edges outgoing from the activity parameter
node. | | Direction | Indicates whether a parameter is being sent into or out of a behavioral element. The default value is in. | | Type | The type of activity parameter node | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of activity parameter node. | | Control type | Tells whether the type of the object node is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize an activity parameter
node. If the value is true, then it is not possible to further
specialize the activity parameter node. Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| |  | | Definition | An
action represents a single step within an activity, that is, one that
is not further decomposed within the activity. An activity represents a
behavior that is composed of individual elements that are actions. Note,
however, that a call behavior action may reference an activity
definition, in which case the execution of the call action involves the
execution of the referenced activity and its actions (similarly for all
the invocation actions). An action is therefore simple from the point of
view of the activity containing it, but may be complex in its effect
and not be atomic. As a piece of structure within an activity model, it
is a single discrete element; as a specification of behavior to be
performed, it may invoke referenced behavior that is arbitrarily
complex. As a consequence, an activity defines a behavior that can be
reused in many places, whereas an instance of an action is only used
once at a particular point in an activity.
An action may have
sets of incoming and outgoing activity edges that specify control flow
and data flow from and to other nodes. An action will not begin
execution until all of its input conditions are satisfied. The
completion of the execution of an action may enable the execution of a
set of successor nodes and actions that take their inputs from the
outputs of the action. |
| | Properties | | | Name | The name of action. | | Visibility | Determines where the action appears within different namespaces within the overall model, and its accessibility. | | Type | Determines
whether it is a call behavior action or a call operation action. Call
behavior action is a call action that invokes a behavior directly rather
than invoking a behavioral feature that, in turn, results in the
invocation of that behavior. Call operation action is an action that
transmits an operation call request to the target object, where it may
cause the invocation of associated behavior. | | Effect | The effect of completing the action. | | Documentation | Description of action. | | Must isolate | Because
of the concurrent nature of the execution of actions within and across
procedures, it can be difficult to guarantee the consistent access and
modification of object memory. In order to avoid these problems, it is
necessary to isolate the effects of a group of actions from the effects
of actions outside the group. This is indicated by setting the
mustIsolate attribute to "true" on a group action. | | Leaf | Indicates
whether it is possible to further specialize an action. If the value is
true, then it is not possible to further specialize the action. |
|
|
|
|
| |
| |  | | Definition | | AcceptEventAction is an action that waits for the occurrence of an event meeting specified condition. |
| | Properties | | | Name | The name of action. | | Visibility | Determines where the action appears within different namespaces within the overall model, and its accessibility. | | Type | Determines
whether it is a call behavior action or a call operation action. Call
behavior action is a call action that invokes a behavior directly rather
than invoking a behavioral feature that, in turn, results in the
invocation of that behavior. Call operation action is an action that
transmits an operation call request to the target object, where it may
cause the invocation of associated behavior. | | Effect | The effect of completing the action. | | Documentation | Description of action. | | Must isolate | Because
of the concurrent nature of the execution of actions within and across
procedures, it can be difficult to guarantee the consistent access and
modification of object memory. In order to avoid these problems, it is
necessary to isolate the effects of a group of actions from the effects
of actions outside the group. This is indicated by setting the
mustIsolate attribute to "true" on a group action. | | Leaf | Indicates
whether it is possible to further specialize an action. If the value is
true, then it is not possible to further specialize the action. |
|
|
|
|
| |
| |  | | Definition | | If
the occurrence is a time event occurrence, the result value contains
the time at which the occurrence transpired. Such an action is
informally called a wait time action. |
| | Properties | | | Name | The name of action. | | Visibility | Determines where the action appears within different namespaces within the overall model, and its accessibility. | | Type | Determines
whether it is a call behavior action or a call operation action. Call
behavior action is a call action that invokes a behavior directly rather
than invoking a behavioral feature that, in turn, results in the
invocation of that behavior. Call operation action is an action that
transmits an operation call request to the target object, where it may
cause the invocation of associated behavior. | | Effect | The effect of completing the action. | | Documentation | Description of action. | | Must isolate | Because
of the concurrent nature of the execution of actions within and across
procedures, it can be difficult to guarantee the consistent access and
modification of object memory. In order to avoid these problems, it is
necessary to isolate the effects of a group of actions from the effects
of actions outside the group. This is indicated by setting the
mustIsolate attribute to "true" on a group action. | | Leaf | Indicates
whether it is possible to further specialize an action. If the value is
true, then it is not possible to further specialize the action. |
|
|
|
|
| |
| |  | | Definition | | An activity may have more than one activity final node. The first one reached stops all flows in the activity. |
| | Properties | | | Name | The name of activity final node. | | Visibility | Determines where the activity final node appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of activity final node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize an activity final node. If
the value is true, then it is not possible to further specialize the
activity final node. |
|
|
|
|
| |
| |  | | Definition | | A
central buffer node accepts tokens from upstream object nodes and
passes them along to downstream object nodes. They act as a buffer for
multiple in flows and out flows from other object nodes. They do not
connect directly to actions. |
| | Properties | | | Name | The name of central buffer node. | | Visibility | Determines where the central buffer node appears within different Namespaces within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells
whether and how the tokens in the central buffer node are ordered for
selection to traverse edges outgoing from the central buffer node. | | Type | The type of central buffer node | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of central buffer node. | | Documentation | Description of activity parameter node. | | Control type | Tells whether the type of the object node is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a central buffer node. If
the value is true, then it is not possible to further specialize the
central buffer node. Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| |  | | Definition | | A conditional node is a structured activity node that represents an exclusive choice among some number of alternatives. |
| | Properties | | | Name | The name of conditional node specification. | | Visibility | Determines where the conditional node appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of conditional node specification. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a conditional node. If the
value is true, then it is not possible to further specialize the
conditional node. Default value is false. | | Assured | If true, the modeler asserts that at least one test will succeed. Default value is false. | | Determinate | If true, the modeler asserts that at most one test will succeed. Default value is false. | | Children | The children of conditional node | | Variables | A variable defined in the scope of the structured activity node. It has no value and may not be accessed outside the node. | | Clauses | of clauses composing the conditional. | | Result | A list of output pins that constitute the data flow outputs of the conditional. |
|
|
|
|
| |
| |  | | Definition | | A control flow is an edge that starts an activity node after the previous one is finished. |
| | Properties | | | Name | The name of control flow. | | Source | Node from which tokens are taken when they traverse the edge. | | Target | Node to which tokens are put when they traverse the edge. | | Weight | The minimum number of tokens that must traverse the edge at the same time. | | Guard | Specification evaluated at runtime to determine if the edge can be traversed. | | Documentation | Description of control flow. | | Duration Constraint | A DurationConstraint defines a Constraint that refers to a DurationInterval. |
|
|
|
|
| |
| |  | | Definition | | A
condition or restriction expressed in natural language text or in a
machine readable language for the purpose of declaring some of the
semantics of an element. |
| | Properties | | | Name | The name of constraint. It is optional and is commonly omitted. | | Expression | The condition that must be true when evaluated in order for the constraint to be satisfied. | | Documentation | Description of constraint. |
|
|
|
|
| |
| |  | | | | Properties | | | Name | The name of data store node. | | Visibility | Determines where the data store node appears within different Namespaces within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells
whether and how the tokens in the data store node are ordered for
selection to traverse edges outgoing from the data store node. | | Type | The type of data store node | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of data store node. | | Control type | Tells whether the type of the object node is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a data store node. If the
value is true, then it is not possible to further specialize the data
store node. Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| |  | | Definition | | A
decision node accepts tokens on an incoming edge and presents them to
multiple outgoing edges. Which of the edges is actually traversed
depends on the evaluation of the guards on the outgoing edges. |
| | Properties | | | Name | The name of decision node. | | Visibility | Determines where the decision node appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of decision node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize a decision node. If the
value is true, then it is not possible to further specialize the
decision node. |
|
|
|
|
| |
| |  | | Definition | | An
exception handler is an element that specifies a body to execute in
case the specified exception occurs during the execution of the
protected node. |
| | Properties | | | Name | The name of exception handler. | | Protected node | node protected by the handler. The handler is examined if an exception propagates to the outside of the node. | | Handler body | A node that is executed if the handler satisfies an uncaught exception. | | Exception input | An
object node within the handler body. When the handler catches an
exception, the exception token is placed in this node, causing the body
to execute. | | Documentation | Description of exception handler. | | Exception Types | The
kind of instances that the handler catches. If an exception occurs
whose type is any of the classifiers in the set, the handler catches the
exception and executes its body. |
|
|
|
|
| |
| |  | | Definition | | An
expansion node is an object node used to indicate a flow across the
boundary of an expansion region. A flow into a region contains a
collection that is broken into its individual elements inside the
region, which is executed once per element. A flow out of a region
combines individual elements into a collection for use outside the
region. |
| | Properties | | | Name | The name of expansion node. | | Visibility | Determines where the expansion node appears within different Namespaces within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells
whether and how the tokens in the expansion node are ordered for
selection to traverse edges outgoing from the expansion node. | | Type | The type of expansion node | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of expansion node. | | Control type | Tells whether the type of the object node is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a expansion node. If the
value is true, then it is not possible to further specialize the
expansion node. Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| |  | | Definition | | An
expansion region is a strictly nested region of an activity with
explicit input and outputs (modeled as ExpansionNodes). Each input is a
collection of values. If there are multiple inputs, each of them must
hold the same kind of collection, although the types of the elements in
the different collections may vary. The expansion region is executed
once for each element (or position) in the input collection |
| | Properties | | | Name | The name of expansion region. | | Visibility | Determines where the expansion region appears within different Namespaces within the overall model, and its accessibility. | | Mode | The way in which the executions interact (default value is iterative): parallel - all interactions are independent iterative - the interactions occur in order of the elements stream - a stream of values flows into a single execution | | Documentation | Description of expansion region. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize an expansion region. If
the value is true, then it is not possible to further specialize the
expansion region. | | Children | The children of expansion region | | Variables | |
|
|
|
|
| |
| |  | | Definition | | A flow final destroys all tokens that arrive at it. It has no effect on other flows in the activity. |
| | Properties | | | Name | The name of flow final node. | | Visibility | Determines where the flow final node appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of flow final node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize an flow final node. If the
value is true, then it is not possible to further specialize the
activity final node. |
|
|
|
|
| |
| |  | | Definition | | A
fork node is a control node that splits a flow into multiple concurrent
flows. A fork node has one incoming edge and multiple outgoing edges. |
| | Properties | | | Name | The name of fork node. | | Visibility | Determines where the fork appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of fork. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize a fork node. If the value
is true, then it is not possible to further specialize the fork node. |
|
|
|
|
| |
| |  | | Definition | | An
initial node is a control node at which flow starts when the activity
is invoked. An activity may have more than one initial node. |
| | Properties | | | Name | The name of initial node. | | Visibility | Determines where the initial node appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of initial node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize an initial node. If the
value is true, then it is not possible to further specialize the initial
node. |
|
|
|
|
| |
| |  | | Definition | | Input
pins are object nodes that receive values from other actions through
object flows. See Pin, Action, and ObjectNode for more details. |
| | Properties | | | Name | The name of input pin. | | Visibility | Determines where the input pin appears within different Namespaces within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells whether and how the tokens in the input pin are ordered for selection to traverse edges outgoing from the input pin. | | Type | The type of input pin | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of input pin. | | Control type | Tells whether the type of the object node is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize an input pin. If the value
is true, then it is not possible to further specialize the input pin.
Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| |  | | Definition | | An
interruptible activity region is an activity group that supports
termination of tokens flowing in the portions of an activity. An
interruptible region contains activity nodes. When a token leaves an
interruptible region via edges designated by the region as interrupting
edges, all tokens and behaviors in the region are terminated. |
| | Properties | | | Name | The name of interruptible activity region. | | Documentation | Description of interruptible activity region. | | Children | The children of interruptible activity region. |
|
|
|
|
| |
| |  | | Definition | | A join node is a control node that synchronizes multiple flows. A join node has multiple incoming edges and one outgoing edge. |
| | Properties | | | Name | The name of join node. | | Visibility | Determines where the join node appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of join node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize a join node. If the value
is true, then it is not possible to further specialize the join node. |
|
|
|
|
| |
| |  | | Definition | | A
loop node is a structured activity node that represents a loop with
setup, test, and body sections. Each section is a well-nested sub region
of the activity whose nodes follow any predecessors of the loop and
precede any successors of the loop. The test section may precede or
follow the body section. The setup section is executed once on entry to
the loop, and the test and body sections are executed repeatedly until
the test produces a false value. The results of the final execution of
the test or body are available after completion of execution of the
loop. |
| | Properties | | | Name | The name of loop node. | | Visibility | Determines where the loop node appears within different Namespaces within the overall model, and its accessibility. | | Decider | An
output pin within the test fragment the value of which is examined
after execution of the test to determine whether to execute the loop
body. | | Documentation | Description of loop node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize a loop node. If the value
is true, then it is not possible to further specialize the loop node. | | Tested first | If
true, the test is performed before the first execution of the body. If
false, the body is executed once before the test is performed. Default
value is false. | | Children | The children of loop node | | Variables | A variable defined in the scope of the structured activity node. It has no value and may not be accessed outside the node. | | Setup Part | The set of nodes and edges that initialize values or perform other setup computations for the loop. | | Test | The
set of nodes, edges, and designated value that compute a Boolean value
to determine if another execution of the body will be performed. | | Body Part | The
set of nodes and edges that perform the repetitive computations of the
loop. The body section is executed as long as the test section produces a
true value. | | Result | A list of output pins that constitute the data flow output of the entire loop. | | Loop Variables | A
list of output pins that hold the values of the loop variables during
an execution of the loop. When the test fails, the values are moved to
the result pins of the loop. | | Body Output | A
list of output pins within the body fragment the values of which are
moved to the loop variable pins after completion of execution of the
body, before the next iteration of the loop begins or before the loop
exits. | | Loop Variables Input | A list of values that are moved into the loop variable pins before the first iteration of the loop. |
|
|
|
|
| |
| |  | | Definition | | A
merge node is a control node that brings together multiple alternate
flows. It is not used to synchronize concurrent flows but to accept one
among several alternate flows. A merge node has multiple incoming edges
and a single outgoing edge. |
| | Properties | | | Name | The name of merge node. | | Visibility | Determines where the merge node appears within different Namespaces within the overall model, and its accessibility. | | Documentation | Description of merge node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. | | Leaf | Indicates
whether it is possible to further specialize a merge node. If the value
is true, then it is not possible to further specialize the merge node. |
|
|
|
|
| |
| |  | | Definition | | A
note (comment) gives the ability to attach various remarks to elements.
A comment carries no semantic force, but may contain information that
is useful to a modeler. |
| | Properties | | | Name | The name of note. | | Documentation | Specifies a string that is the comment. |
|
|
|
|
| |
| |  | | Definition | | An object flow is an activity edge that can have objects or data passing along it. |
| | Properties | | | Name | The name of object flow. | | Source | Node from which tokens are taken when they traverse the edge. | | Target | Node to which tokens are put when they traverse the edge. | | Selection | Selects tokens from a source object node. | | Transformation | Changes or replaces data tokens flowing along edge. | | Weight | The minimum number of tokens that must traverse the edge at the same time. | | Guard | Specification evaluated at runtime to determine if the edge can be traversed. | | Documentation | Description of object flow. | | Multicast | Tells whether the objects in the flow are passed by multicasting. | | Multireceive | Tells whether the objects in the flow are gathered from respondents to multicasting. |
|
|
|
|
| |
| |  | | Definition | | An
object node is an activity node that indicates an instance of a
particular classifier, possibly in a particular state, may be available
at a particular point in the activity. Object nodes can be used in a
variety of ways, depending on where objects are flowing from and to, as
described in the semantics sub clause. |
| | Properties | | | Name | The name of object node. | | Visibility | Determines where the data store node appears within different Namespaces within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells
whether and how the tokens in the data store node are ordered for
selection to traverse edges outgoing from the data store node. | | Type | The type of object node | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of object node. | | Control type | Tells whether the type of the object node is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize an object node. If the
value is true, then it is not possible to further specialize the object
node. Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| |  | | Definition | | Output pins are object nodes that deliver values to other actions through object flows. |
| | Properties | | | Name | The name of output pin. | | Visibility | Determines where the data store node appears within different Namespaces within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells
whether and how the tokens in the data store node are ordered for
selection to traverse edges outgoing from the data store node. | | Type | The type of data store node | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of output pin. | | Control type | Tells whether the type of the output pin is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a output pin. If the value
is true, then it is not possible to further specialize the output pin.
Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| |  | | Definition | | SendSignalAction
is an action that creates a signal instance from its inputs, and
transmits it to the target object, where it may cause the firing of a
state machine transition or the execution of an activity. The argument
values are available to the execution of associated behaviors. The
requestor continues execution immediately. Any reply message is ignored
and is not transmitted to the requestor. If the input is already a
signal instance, use SendObjectAction. |
| | Properties | | | Name | The name of action. | | Visibility | Determines where the action appears within different namespaces within the overall model, and its accessibility. | | Type | Determines
whether it is a call behavior action or a call operation action. Call
behavior action is a call action that invokes a behavior directly rather
than invoking a behavioral feature that, in turn, results in the
invocation of that behavior. Call operation action is an action that
transmits an operation call request to the target object, where it may
cause the invocation of associated behavior. | | Effect | The effect of completing the action. | | Documentation | Description of action. | | Must isolate | Because
of the concurrent nature of the execution of actions within and across
procedures, it can be difficult to guarantee the consistent access and
modification of object memory. In order to avoid these problems, it is
necessary to isolate the effects of a group of actions from the effects
of actions outside the group. This is indicated by setting the
mustIsolate attribute to "true" on a group action. | | Leaf | Indicates
whether it is possible to further specialize an action. If the value is
true, then it is not possible to further specialize the action. |
|
|
|
|
| |
| |  | | Definition | | A sequence node is a structured activity node that executes its actions in order. |
| | Properties | | | Name | The name of sequence node. | | Visibility | Determines where the sequence node appears within different namespaces within the overall model, and its accessibility. | | Documentation | Description of sequence node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a sequence node. If the
value is true, then it is not possible to further specialize the
sequence node. | | Children | The children of sequence node | | Variables | A variable defined in the scope of the sequence node. It has no value and may not be accessed outside the node. |
|
|
|
|
| |
| |  | | Definition | | A sequence node is a structured activity node that executes its actions in order. |
| | Properties | | | Name | The name of structured activity node. | | Visibility | Determines
where the structured activity node appears within different namespaces
within the overall model, and its accessibility. | | Documentation | Description of structured activity node. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a structured activity
node. If the value is true, then it is not possible to further
specialize the structured activity node. | | Children | The children of structured activity node | | Variables | A variable defined in the scope of the structured activity node. It has no value and may not be accessed outside the node. |
|
|
|
|
| |
| |  | | Definition | | Swimlane is used for partitioning the children in an activity diagram. |
| | Properties | | | Name | The name of swimlane. | | Documentation | Description of swimlane. | | Horizontal Partitions | The horizontal partitions of swimlane. | | Vertical Partitions | The horizontal partitions of swimlane. |
|
|
|
|
| |
| |  | | Definition | | A value pin is an input pin that provides a value to an action that does not come from an incoming object flow edge. |
| | Properties | | | Name | The name of value pin. | | Visibility | Determines where the data store node appears within different Namespaces within the overall model, and its accessibility. | | Parameter | The parameter the object node will be accepting or providing values for. | | Upper bound | The maximum number of tokens allowed in the node. Objects cannot flow into the node if the upper bound is reached. | | Ordering kind | Tells
whether and how the tokens in the data store node are ordered for
selection to traverse edges outgoing from the data store node. | | Type | The type of data store node | | Type modifier | Indicates a modifier that applies to the property. | | Documentation | Description of value pin. | | Control type | Tells whether the type of the object node is to be treated as control. | | Must isolate | If true, then the actions in the node execute in isolation from actions outside the node. Default value is false. | | Leaf | Indicates
whether it is possible to further specialize a data store node. If the
value is true, then it is not possible to further specialize the data
store node. Default value is false. | | InStates | The required states of the object available at this point in the activity. |
|
|
|
|
| |
| Definition of notations is quoted from Object Management Group Unified Modeling Language (OMG UML) Superstructure Version 2.2 and former versions (for notations that do not exist anymore in latest specification). |
| |
|
Use case diagram
|
Class diagram
|
Sequence diagram
|
Communication diagram
|
State machine diagram
|
Activity diagram
|
Component diagram
|
Deployment diagram
|
Package diagram
|
Object diagram
|
Composite structure diagram
|
Timing diagram
|
Interaction overview diagram
|